#include <stdio.h>
#include <stdlib.h>

#define MAX 1000

#include "dane.h"
char *lista[MAX];
/* *objaśnienie zasad działania poszczególnych funkcji znajduje się w plikach "wejscie.c" oraz "wyjscie.c" */
int main(int argc, char *argv[])
{
  int x;
  Naglowek dane_struct;

  if(argc==2) {
/* wczytywanie danych z wejścia standardowego (stdin) */

    dane_struct=wczytywanie_z_wejscia(lista, &x);

  } else if(argc==3) {
/* wczytywanie danych z pliku (podanego jako drugi parametr) */

    dane_struct=wczytywanie_z_pliku(argv[2], lista, &x);

  } else {
    printf("\nSchemat wywołania:\nNależy podać jako parametr nazwe pliku z szablonem,\noraz (opcjonalnie) nazwe pliku z danymi do wczytania.\nW przypadku podania jednego parametru,\nodpowiednie dane należy wypisać na wejście standardowe.\n\n");
    exit(-1);
  }
/* wczytywanie szablonu oraz wypisywanie wg niego uprzednio wczytanych danych */

  FILE *szablon=fopen(argv[1], "r");
  wypisywanie(szablon, dane_struct, lista, x);

  fclose(szablon);
  return 0;
}
